package cn.rocky.zuosheng;

public class CodeGetArrayMax {

    public static int getMax(int[] arr) {
        return process(arr, 0, arr.length - 1);
    }

    // arr[L..R] 的范围上求最大值 N
    public static int process(int[] arr, int L, int R) {
        // arr[L..R]的范围上只有一个数,直接返回
        if (L == R) { return arr[L]; }
        int mid = L + ((R - L) >> 1);
        int leftMax = process(arr, L, mid);
        int rightMax = process(arr, mid + 1, R);
        return Math.max(leftMax, rightMax);
    }
}
